package Part_2;

public class Test {
    /*
    * 创建输入间隔标识y
    * 循环创建2到10000的整数
    * 每次循环，使用判断方法isPrime去判断是否为素数，如果为素数，则判断是否等于8，是则输出该素数并换行，否则输出素数并空格
    * 判断方法里，优化逻辑，排除小于2的数，是2则直接返回true，判断为偶数直接返回false，判断是否有1与本身以外的因数，是则返回false，能通过前面的筛选后，最终都是符合要求的素数，所以返回ture
    * */
    public static void main(String[] args) {
        int y=0;
        for (int i = 2; i <= 10000; i++) {
            if(isPrime(i)){
                y++;
                if(y==8){
                    y=0;
                    System.out.println(i);
                }else{
                    System.out.print(i+" ");
                }
            }
        }
    }
    static boolean isPrime(int n) {
        if(n < 2){
            return false;
        }
        if(n == 2){
            return true;
        }
        if(n%2==0){
            return false;
        }
        for(int i = 3; i*i <= n; i += 2){
            if(n%i == 0) return false;
        }
        return true;
    }
}
